Skip to content

feat: reestrutura exemplos em pt/en e alinha contratos com a API#24

Merged
LeoFalco merged 1 commit into
masterfrom
feat/exemplos-bilingues
Jun 18, 2026
Merged

feat: reestrutura exemplos em pt/en e alinha contratos com a API#24
LeoFalco merged 1 commit into
masterfrom
feat/exemplos-bilingues

Conversation

@eduamorimm

Copy link
Copy Markdown
Contributor

Contexto

Um cliente estava com dificuldade de entender a API de integração. Ao revisar este repositório de exemplos contra o contrato atual da API amonamarth, encontrei 5 exemplos inconsistentes e, na sequência, reorganizei o repositório em uma versão bilíngue (PT/EN) para facilitar o consumo.

O que muda

1. Correções de consistência com a API (5 exemplos)

Endpoint Problema Correção
POST /pendencies enviava companyId / pendencyTypeId (planos) → 422 objetos company: {id} / pendencyType: {id}
POST /equipment-types customFields[].type com valores inexistentes (text/select/…) enum real QUESTION / NUMBER / DATE / MULTIPLE_CHOICE (+ assert corrigido)
GET /companies nameContains / orderColumn / orderDirection não existem (ignorados em silêncio) nameEq / orderBy / direction
GET /locations/:id/service-providers segmentId não é suportado pelo endpoint parâmetro removido (+ lookup morto)
POST /pendencies/:id/actions/conclude enviava body que é descartado body removido

2. Reestruturação bilíngue

amonamarth-examples/
├── core/            # client.js + utils.js (compartilhado)
├── data/
├── pt/exemplos/     # 26 exemplos — comentários/textos em português
├── en/examples/     # 26 exemplos — comentários/textos em inglês
└── README.md        # raiz bilíngue + pt/README.md + en/README.md
  • Pastas e arquivos nomeados por idioma (ex.: pt/exemplos/manutencoes/criar-manutencao-com-endereco.jsen/examples/maintenances/create-maintenance-with-address.js).
  • Imports ajustados para o core/ compartilhado (../../../core/) e o path do data/ no exemplo de anexo (../../../../data).
  • Na versão EN, foram traduzidos comentários, logs e textos criados (mensagens, títulos, descrições). Valores de lookup (nameEq, nomes de dados reais como Manutenção corretiva, 001 - Ar condicionado) foram mantidos em português para não quebrar as consultas contra os dados reais da conta.

Observação

  • O exemplo get-canceled-maintenances tinha um for vazio no original; recebeu um console.log por item para passar no lint e ilustrar o uso. É a única mudança de comportamento além de mover/traduzir.

Verificação

  • node_modules/.bin/eslint . → exit 0.
  • Exemplos de anexo (PT e EN) resolvem data/ corretamente (chegam no passo HTTP, sem ENOENT).

🤖 Generated with Claude Code

@eduamorimm eduamorimm requested a review from a team as a code owner June 18, 2026 19:06
LeoFalco
LeoFalco previously approved these changes Jun 18, 2026
Cria uma versão multilíngue do repositório de exemplos, separando em
`pt/exemplos` (português), `en/examples` (inglês) e `es/ejemplos`
(espanhol), com `core/` compartilhado na raiz. Antes de duplicar,
corrige 5 exemplos que estavam inconsistentes com o contrato atual da
API amonamarth:

- POST /pendencies: usa objetos `company: {id}` / `pendencyType: {id}`
  em vez de `companyId` / `pendencyTypeId` (que retornavam 422).
- POST /equipment-types: valores de `customFields[].type` corrigidos
  para o enum real (QUESTION/NUMBER/DATE/MULTIPLE_CHOICE) e assert.
- GET /companies: `nameEq` / `orderBy` / `direction` (os nomes
  `nameContains` / `orderColumn` / `orderDirection` não existem e eram
  ignorados silenciosamente).
- GET /locations/:id/service-providers: remove o `segmentId` não
  suportado pelo endpoint.
- POST /pendencies/:id/actions/conclude: remove o body descartado.

Nas traduções (en/es), comentários, logs e textos criados foram
traduzidos, mas os valores de lookup (nameEq, nomes de dados reais)
foram mantidos em português para não quebrar as consultas.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@LeoFalco LeoFalco merged commit 893d971 into master Jun 18, 2026
7 checks passed
@LeoFalco LeoFalco deleted the feat/exemplos-bilingues branch June 18, 2026 23:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants